package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	/*
		输入和输出：
			fmt包: 输入, 输出

			输出：
				Print()
				Println() // 打印格式化
				Printf()  // 打印之后换行
			格式化打印占位符:
				%v: 原样输出
				%T: 打印类型
				%t: bool 类型
				%s: 字符串
				%f: 浮点数
				%d: 10进制的整数
				%b: 2进制的整数
				%o: 8进制
				%x: 小写的16进制
				%X: 大写的16进制
				%c: 打印字符
				%p: 打印地址
		输入:
				Scanln()
				Scanf()
		bufio包：

	*/

	a := 100
	b := 3.14
	c := true
	d := "Hello World"
	e := `Ruby`
	f := 'A'

	fmt.Printf("%T, %b\n", a, a)
	fmt.Printf("%T, %f\n", b, b)
	fmt.Printf("%T, %t\n", c, c)
	fmt.Printf("%T, %s\n", d, d)
	fmt.Printf("%T, %s\n", e, e)
	fmt.Printf("%T, %d, %c\n", f, f, f)

	//var x int
	//var y float64
	//fmt.Println("请输入一个整数, 一个浮点类型:")
	//fmt.Scanln(&x, &y) // 读取键盘的输入, 通过操作地址, 赋值给x和y , 阻塞式
	//fmt.Printf("a的数值: %d, b的数值 %f \n", x, y)
	//
	//fmt.Scanf("%d,%f", &x, &y) // 需要按照指定格式输入
	//fmt.Printf("x: %d, y:%f \n", x, y)

	fmt.Println("请输入一个字符串：")
	reader := bufio.NewReader(os.Stdin)
	s1, _ := reader.ReadString('\n')
	fmt.Println("读到的数据:", s1)
}
